home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Disc to the Future 2
/
Disc to the Future Part II Programmer's Reference (Wayzata Technology)(6013)(1992).bin
/
MAC
/
THINKC
/
4_0
/
NOFLICKE
/
MBARMENU.C
< prev
Wrap
C/C++ Source or Header
|
1990-12-27
|
2KB
|
92 lines
#include <MenuMgr.h>
#include <WindowMgr.h>
extern Boolean notDone;
extern MenuHandle AppleMenu, FileMenu, EditMenu, FlickerMenu, Flicker1Menu, Flicker2Menu;
extern Boolean flickerEnabled;
extern Boolean flic1Enabled;
extern Boolean flic2Enabled;
void SetupMenus ()
{
CheckItem (FlickerMenu, 1, flickerEnabled ? true : false);
CheckItem (FlickerMenu, 4, flic1Enabled ? true : false);
CheckItem (FlickerMenu, 5, flic2Enabled ? true : false);
}
void DoMenuCommand (mCmd)
long mCmd;
{
short menuID = HiWord (mCmd);
short menuItem = LoWord (mCmd);
GrafPtr curPort;
char str[256];
Handle h;
WindowPtr fWPtr;
switch (menuID) {
case 128: /* apple menu */
if (menuItem == 1)
ShowAbout ();
else {
GetPort (&curPort);
GetItem (AppleMenu, menuItem, str);
h = GetNamedResource ('DRVR', str);
OpenDeskAcc (str);
SetPort (curPort);
}
break;
case 129: /* file menu */
if (menuItem == 1)
notDone = false;
break;
case 130:
if (fWPtr = FrontWindow ()) {
if (((WindowPeek) fWPtr)->windowKind < 0) {
SystemEdit (menuItem-1);
}
}
case 131:
HiliteMenu (0);
switch (menuItem) {
case 1: /* no flicker enable/disable */
flickerEnabled = !flickerEnabled;
EnableMBarPatch (flickerEnabled);
break;
case 2: /* redraw menu bar */
DrawMenuBar ();
break;
case 4: /* enable/disable flicker 1 */
flic1Enabled = !flic1Enabled;
if (flic1Enabled)
EnableItem (Flicker1Menu, 0);
else
DisableItem (Flicker1Menu, 0);
DrawMenuBar ();
break;
case 5: /* enable/disable flicker 2 */
flic2Enabled = !flic2Enabled;
if (flic2Enabled)
EnableItem (Flicker2Menu, 0);
else
DisableItem (Flicker2Menu, 0);
DrawMenuBar ();
break;
}
}
HiliteMenu (0);
}